home *** CD-ROM | disk | FTP | other *** search
/ InterCD 2001 November / november_2001.iso / Browsers / Netscape 6.1 / browser.xpi / bin / chrome / comm.jar / content / editor / EdAEAttributes.js < prev    next >
Encoding:
JavaScript  |  2001-06-12  |  18.0 KB  |  1,747 lines

  1. /*
  2.  * The contents of this file are subject to the Netscape Public
  3.  * License Version 1.1 (the "License"); you may not use this file
  4.  * except in compliance with the License. You may obtain a copy of
  5.  * the License at http://www.mozilla.org/NPL/
  6.  *
  7.  * Software distributed under the License is distributed on an "AS
  8.  * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
  9.  * implied. See the License for the specific language governing
  10.  * rights and limitations under the License.
  11.  *
  12.  * The Original Code is Mozilla Communicator client code, released
  13.  * March 31, 1998.
  14.  *
  15.  * The Initial Developer of the Original Code is Netscape
  16.  * Communications Corporation. Portions created by Netscape are
  17.  * Copyright (C) 1998-2001 Netscape Communications Corporation. All
  18.  * Rights Reserved.
  19.  *
  20.  * Contributor(s):
  21.  *    Beth Epperson
  22.  */
  23.  
  24.  
  25. // HTML Attributes object for "Name" menulist
  26. var gHTMLAttr = {};
  27.  
  28. // JS Events Attributes object for "Name" menulist
  29. var gJSAttr = {};
  30.  
  31.  
  32. // Core HTML attribute values //
  33. // This is appended to Name menulist when "_core" is attribute name
  34. var gCoreHTMLAttr =
  35. [
  36.     "id",
  37.     "class",
  38.     "title"
  39. ];
  40.  
  41. // Core event attribute values //
  42. // This is appended to all JS menulists
  43. var gCoreJSEvents =
  44. [
  45.     "onclick",
  46.     "ondblclick",
  47.     "onmousedown",
  48.     "onmouseup",
  49.     "onmouseover",
  50.     "onmousemove",
  51.     "onmouseout",
  52.   "-",
  53.   "onkeypress",
  54.     "onkeydown",
  55.     "onkeyup"
  56. ];
  57.  
  58. // Following are commonly-used strings
  59.  
  60. // Alse accept: sRGB: #RRGGBB //
  61. var gHTMLColors =
  62. [
  63.     "Black",
  64.     "Green",
  65.     "Silver",
  66.     "Lime",
  67.     "Gray",
  68.     "Olive",
  69.     "White",
  70.     "Yellow",
  71.     "Maroon",
  72.     "Navy",
  73.     "Red",
  74.     "Blue",
  75.     "Purple",
  76.     "Teal",
  77.     "Fuchsia",
  78.     "Aqua"
  79. ];
  80.  
  81. var gHAlign =
  82. [
  83.     "left",
  84.     "center",
  85.     "right"
  86. ];
  87.  
  88. var gHAlignJustify =
  89. [
  90.     "left",
  91.     "center",
  92.     "right",
  93.     "justify"
  94. ];
  95.  
  96. var gHAlignTableContent =
  97. [
  98.     "left",
  99.     "center",
  100.     "right",
  101.     "justify",
  102.     "char"
  103. ];
  104.  
  105. var gVAlignTable =
  106. [
  107.     "top",
  108.     "middle",
  109.     "bottom",
  110.     "baseline"
  111. ];
  112.  
  113. // ================ HTML Attributes ================ //
  114. gHTMLAttr.a =
  115. [
  116.     "charset",
  117.     "type",
  118.     "name",
  119.     "href",
  120.     "hreflang",
  121.     "target",
  122.     "rel",
  123.     "rev",
  124.     "!accesskey",
  125.     "shape",        // with imagemap //
  126.     "coords",        // with imagemap //
  127.     "#tabindex",
  128.   "-",
  129.   "_core",
  130.   "-",
  131.     "lang",
  132.     "dir"
  133. ];
  134.  
  135. gHTMLAttr.a_rel =
  136. [
  137.     "alternate",
  138.     "stylesheet",
  139.     "start",
  140.     "next",
  141.     "prev",
  142.     "contents",
  143.     "index",
  144.     "glossary",
  145.     "copyright",
  146.     "chapter",
  147.     "section",
  148.     "subsection",
  149.     "appendix",
  150.     "help",
  151.     "bookmark"
  152. ];
  153.  
  154. gHTMLAttr.a_rev =
  155. [
  156.     "alternate",
  157.     "stylesheet",
  158.     "start",
  159.     "next",
  160.     "prev",
  161.     "contents",
  162.     "index",
  163.     "glossary",
  164.     "copyright",
  165.     "chapter",
  166.     "section",
  167.     "subsection",
  168.     "appendix",
  169.     "help",
  170.     "bookmark"
  171. ];
  172.  
  173. gHTMLAttr.a_shape =
  174. [
  175.     "rect",
  176.     "circle",
  177.     "poly",
  178.     "default"
  179. ];
  180.  
  181. gHTMLAttr.abbr =
  182. [
  183.   "_core",
  184.   "-",
  185.     "lang",
  186.     "dir"
  187. ];
  188.  
  189. gHTMLAttr.acronym =
  190. [
  191.   "_core",
  192.   "-",
  193.     "lang",
  194.     "dir"
  195. ];
  196.  
  197. gHTMLAttr.address =
  198. [
  199.   "_core",
  200.   "-",
  201.     "lang",
  202.     "dir"
  203. ];
  204.  
  205. // this is deprecated //
  206. gHTMLAttr.applet =
  207. [
  208.     "codebase",
  209.     "archive",
  210.     "code",
  211.     "object",
  212.     "alt",
  213.     "name",
  214.     "$width",
  215.     "$height",
  216.     "align",
  217.     "hspace",
  218.     "vspace",
  219.   "-",
  220.   "_core"
  221. ];
  222.  
  223. gHTMLAttr.applet_align =
  224. [
  225.     "top",
  226.     "middle",
  227.     "bottom",
  228.     "left",
  229.     "right"
  230. ];
  231.  
  232. gHTMLAttr.area =
  233. [
  234.     "shape",
  235.     "coords",
  236.     "href",
  237.     "nohref",
  238.     "target",
  239.     "$alt",
  240.     "#tabindex",
  241.     "!accesskey",
  242.   "-",
  243.   "_core",
  244.   "-",
  245.     "lang",
  246.     "dir"
  247. ];
  248.  
  249. gHTMLAttr.area_shape =
  250. [
  251.     "rect",
  252.     "circle",
  253.     "poly",
  254.     "default"
  255. ];
  256.  
  257. gHTMLAttr.area_nohref =
  258. [
  259.     "nohref"
  260. ];
  261.  
  262. gHTMLAttr.b =
  263. [
  264.   "_core",
  265.   "-",
  266.     "lang",
  267.     "dir"
  268. ];
  269.  
  270. gHTMLAttr.base =
  271. [
  272.     "href",
  273.     "target"
  274. ];
  275.  
  276. // this is deprecated //
  277. gHTMLAttr.basefont =
  278. [
  279.     "id",
  280.     "$size",
  281.     "color",
  282.     "face"
  283. ];
  284.  
  285. gHTMLAttr.basefont_color = gHTMLColors;
  286.  
  287. gHTMLAttr.bdo =
  288. [
  289.     "lang",
  290.     "$dir"
  291. ];
  292.  
  293. gHTMLAttr.bdo_dir =
  294. [
  295.     "ltr",
  296.     "rtl"
  297. ];
  298.  
  299. gHTMLAttr.big =
  300. [
  301.   "_core",
  302.   "-",
  303.     "lang",
  304.     "dir"
  305. ];
  306.  
  307. gHTMLAttr.blockquote =
  308. [
  309.     "cite",
  310.   "-",
  311.   "_core",
  312.   "-",
  313.     "lang",
  314.     "dir"
  315. ];
  316.  
  317. gHTMLAttr.body =
  318. [
  319.     "background",
  320.     "bgcolor",
  321.     "text",
  322.     "link",
  323.     "vlink",
  324.     "alink",
  325.   "-",
  326.   "_core",
  327.   "-",
  328.     "lang",
  329.     "dir"
  330. ];
  331.  
  332. gHTMLAttr.body_background = gHTMLColors;
  333.  
  334. gHTMLAttr.body_bgcolor = gHTMLColors;
  335.  
  336. gHTMLAttr.body_text = gHTMLColors;
  337.  
  338. gHTMLAttr.body_link = gHTMLColors;
  339.  
  340. gHTMLAttr.body_vlink = gHTMLColors;
  341.  
  342. gHTMLAttr.body_alink = gHTMLColors;
  343.  
  344. gHTMLAttr.br =
  345. [
  346.     "clear",
  347.   "-",
  348.   "_core"
  349. ];
  350.  
  351. gHTMLAttr.br_clear =
  352. [
  353.     "none",
  354.     "left",
  355.     "all",
  356.     "right"
  357. ];
  358.  
  359. gHTMLAttr.button =
  360. [
  361.     "name",
  362.     "value",
  363.     "$type",
  364.     "disabled",
  365.     "#tabindex",
  366.     "!accesskey",
  367.   "-",
  368.   "_core",
  369.   "-",
  370.     "lang",
  371.     "dir"
  372. ];
  373.  
  374. gHTMLAttr.button_type =
  375. [
  376.     "submit",
  377.     "button",
  378.     "reset"
  379. ];
  380.  
  381. gHTMLAttr.button_disabled =
  382. [
  383.     "disabled"
  384. ];
  385.  
  386. gHTMLAttr.caption =
  387. [
  388.     "align",
  389.   "-",
  390.   "_core",
  391.   "-",
  392.     "lang",
  393.     "dir"
  394. ];
  395.  
  396. gHTMLAttr.caption_align =
  397. [
  398.     "top",
  399.     "bottom",
  400.     "left",
  401.     "right"
  402. ];
  403.  
  404.  
  405. // this is deprecated //
  406. gHTMLAttr.center =
  407. [
  408.   "_core",
  409.   "-",
  410.     "lang",
  411.     "dir"
  412. ];
  413.  
  414. gHTMLAttr.cite =
  415. [
  416.   "_core",
  417.   "-",
  418.     "lang",
  419.     "dir"
  420. ];
  421.  
  422. gHTMLAttr.code =
  423. [
  424.   "_core",
  425.   "-",
  426.     "lang",
  427.     "dir"
  428. ];
  429.  
  430. gHTMLAttr.col =
  431. [
  432.     "#$span",
  433.     "%width",
  434.     "align",
  435.     "!char",
  436.     "#charoff",
  437.     "valign",
  438.   "char",
  439.   "-",
  440.   "_core",
  441.   "-",
  442.     "lang",
  443.     "dir"
  444. ];
  445.  
  446. gHTMLAttr.col_span =
  447. [
  448.   "1"  // default
  449. ];
  450.  
  451. gHTMLAttr.col_align = gHAlignTableContent;
  452.  
  453. gHTMLAttr.col_valign =
  454. [
  455.     "top",
  456.     "middle",
  457.     "bottom",
  458.     "baseline"
  459. ];
  460.  
  461.  
  462. gHTMLAttr.colgroup =
  463. [
  464.     "#$span",
  465.     "%width",
  466.     "align",
  467.     "!char",
  468.     "#charoff",
  469.     "valign",
  470.   "-",
  471.   "_core",
  472.   "-",
  473.     "lang",
  474.     "dir"
  475. ];
  476.  
  477. gHTMLAttr.colgroup_span =
  478. [
  479.   "1" // default
  480. ];
  481.  
  482. gHTMLAttr.colgroup_align = gHAlignTableContent;
  483.  
  484. gHTMLAttr.colgroup_valign =
  485. [
  486.     "top",
  487.     "middle",
  488.     "bottom",
  489.     "baseline"
  490. ];
  491.  
  492. gHTMLAttr.dd =
  493. [
  494.   "_core",
  495.   "-",
  496.     "lang",
  497.     "dir"
  498. ];
  499.  
  500. gHTMLAttr.del =
  501. [
  502.     "cite",
  503.     "datetime"
  504. ];
  505.  
  506. gHTMLAttr.dfn =
  507. [
  508.   "_core",
  509.   "-",
  510.     "lang",
  511.     "dir"
  512. ];
  513.  
  514. // this is deprecated //
  515. gHTMLAttr.dir =
  516. [
  517.     "compact",
  518.   "-",
  519.   "_core",
  520.   "-",
  521.     "lang",
  522.     "dir"
  523. ];
  524.  
  525. gHTMLAttr.dir_compact =
  526. [
  527.     "compact"
  528. ];
  529.  
  530. gHTMLAttr.div =
  531. [
  532.     "align",
  533.   "-",
  534.   "_core",
  535.   "-",
  536.     "lang",
  537.     "dir"
  538. ];
  539.  
  540. gHTMLAttr.div_align = gHAlignJustify;
  541.  
  542. gHTMLAttr.dl =
  543. [
  544.     "compact",
  545.   "-",
  546.   "_core",
  547.   "-",
  548.     "lang",
  549.     "dir"
  550. ];
  551.  
  552. gHTMLAttr.dl_compact =
  553. [
  554.     "compact"
  555. ];
  556.  
  557.  
  558. gHTMLAttr.dt =
  559. [
  560.   "_core",
  561.   "-",
  562.     "lang",
  563.     "dir"
  564. ];
  565.  
  566. gHTMLAttr.em =
  567. [
  568.   "_core",
  569.   "-",
  570.     "lang",
  571.     "dir"
  572. ];
  573.  
  574. gHTMLAttr.fieldset =
  575. [
  576.   "_core",
  577.   "-",
  578.     "lang",
  579.     "dir"
  580. ];
  581.  
  582. // this is deprecated //
  583. gHTMLAttr.font =
  584. [
  585.     "size",
  586.     "color",
  587.     "face",
  588.   "-",
  589.   "_core",
  590.   "-",
  591.     "lang",
  592.     "dir"
  593. ];
  594.  
  595. gHTMLAttr.font_color = gHTMLColors;
  596.  
  597. gHTMLAttr.form =
  598. [
  599.     "$action",
  600.     "$method",
  601.     "enctype",
  602.     "accept",
  603.     "name",
  604.     "accept-charset",
  605.     "target",
  606.   "-",
  607.   "_core",
  608.   "-",
  609.     "lang",
  610.     "dir"
  611. ];
  612.  
  613. gHTMLAttr.form_method =
  614. [
  615.     "get",
  616.     "post"
  617. ];
  618.  
  619. gHTMLAttr.form_enctype =
  620. [
  621.     "application/x-www-form-urlencoded"
  622. ];
  623.  
  624.  
  625. gHTMLAttr.frame =
  626. [
  627.     "longdesc",
  628.     "name",
  629.     "src",
  630.     "#frameborder",
  631.     "#marginwidth",
  632.     "#marginheight",
  633.     "noresize",
  634.     "$scrolling"
  635. ];
  636.  
  637. gHTMLAttr.frame_frameborder =
  638. [
  639.     "1",
  640.     "0"
  641. ];
  642.  
  643. gHTMLAttr.frame_noresize =
  644. [
  645.     "noresize"
  646. ];
  647.  
  648. gHTMLAttr.frame_scrolling =
  649. [
  650.     "auto",
  651.     "yes",
  652.     "no"
  653. ];
  654.  
  655.  
  656. gHTMLAttr.frameset =
  657. [
  658.     "rows",
  659.     "cols",
  660.   "-",
  661.   "_core"
  662. ];
  663.  
  664. gHTMLAttr.h1 =
  665. [
  666.     "align",
  667.   "-",
  668.   "_core",
  669.   "-",
  670.     "lang",
  671.     "dir"
  672. ];
  673.  
  674. gHTMLAttr.h1_align = gHAlignJustify;
  675.  
  676. gHTMLAttr.h2 =
  677. [
  678.     "align",
  679.   "-",
  680.   "_core",
  681.   "-",
  682.     "lang",
  683.     "dir"
  684. ];
  685.  
  686. gHTMLAttr.h2_align = gHAlignJustify;
  687.  
  688. gHTMLAttr.h3 =
  689. [
  690.     "align",
  691.   "-",
  692.   "_core",
  693.   "-",
  694.     "lang",
  695.     "dir"
  696. ];
  697.  
  698. gHTMLAttr.h3_align =  gHAlignJustify;
  699.  
  700. gHTMLAttr.h4 =
  701. [
  702.     "align",
  703.   "-",
  704.   "_core",
  705.   "-",
  706.     "lang",
  707.     "dir"
  708. ];
  709.  
  710. gHTMLAttr.h4_align = gHAlignJustify;
  711.  
  712.  
  713. gHTMLAttr.h5 =
  714. [
  715.     "align",
  716.   "-",
  717.   "_core",
  718.   "-",
  719.     "lang",
  720.     "dir"
  721. ];
  722.  
  723. gHTMLAttr.h5_align = gHAlignJustify;
  724.  
  725. gHTMLAttr.h6 =
  726. [
  727.     "align",
  728.   "-",
  729.   "_core",
  730.   "-",
  731.     "lang",
  732.     "dir"
  733. ];
  734.  
  735. gHTMLAttr.h6_align = gHAlignJustify;
  736.  
  737. gHTMLAttr.head =
  738. [
  739.     "profile",
  740.   "-",
  741.     "lang",
  742.     "dir"
  743. ];
  744.  
  745. gHTMLAttr.hr =
  746. [
  747.     "align",
  748.     "noshade",
  749.     "size",
  750.     "%width",
  751.   "-",
  752.   "_core",
  753.   "-",
  754.     "lang",
  755.     "dir"
  756. ];
  757.  
  758. gHTMLAttr.hr_align = gHAlign;
  759.  
  760. gHTMLAttr.hr_noshade = 
  761. [
  762.     "noshade"
  763. ];
  764.  
  765.  
  766. gHTMLAttr.html =
  767. [
  768.     "version",
  769.   "-",
  770.     "lang",
  771.     "dir"
  772. ];
  773.  
  774. gHTMLAttr.i =
  775. [
  776.   "_core",
  777.   "-",
  778.     "lang",
  779.     "dir"
  780. ];
  781.  
  782. gHTMLAttr.iframe =
  783. [
  784.     "longdesc",
  785.     "name",
  786.     "src",
  787.     "$frameborder",
  788.     "marginwidth",
  789.     "marginheight",
  790.     "$scrolling",
  791.     "align",
  792.     "%height",
  793.     "%width",
  794.   "-",
  795.   "_core"
  796. ];
  797.  
  798. gHTMLAttr.iframe_frameborder =
  799. [
  800.     "1",
  801.     "0"
  802. ];
  803.  
  804. gHTMLAttr.iframe_scrolling =
  805. [
  806.     "auto",
  807.     "yes",
  808.     "no"
  809. ];
  810.  
  811. gHTMLAttr.img =
  812. [
  813.     "$src",
  814.     "$alt",
  815.     "longdesc",
  816.     "name",
  817.     "%height",
  818.     "%width",
  819.     "usemap",
  820.     "ismap",
  821.     "align",
  822.     "border",
  823.     "hspace",
  824.     "vspace",
  825.   "-",
  826.   "_core",
  827.   "-",
  828.     "lang",
  829.     "dir"
  830. ];
  831.  
  832. gHTMLAttr.img_ismap =
  833. [
  834.     "ismap"
  835. ];
  836.  
  837. gHTMLAttr.img_align =
  838. [
  839.     "top",
  840.     "middle",
  841.     "bottom",
  842.     "left",
  843.     "right"
  844. ];
  845.  
  846. gHTMLAttr.input =
  847. [
  848.     "$type",
  849.     "name",
  850.     "value",
  851.     "checked",
  852.     "disabled",
  853.     "readonly",
  854.     "size",
  855.     "#maxlength",
  856.     "src",
  857.     "alt",
  858.     "usemap",
  859.     "ismap",
  860.     "#tabindex",
  861.     "!accesskey",
  862.     "accept",
  863.     "align",
  864.   "-",
  865.   "_core",
  866.   "-",
  867.     "lang",
  868.     "dir"
  869. ];
  870.  
  871. gHTMLAttr.input_type =
  872. [
  873.     "text",
  874.     "password",
  875.     "checkbox",
  876.     "radio",
  877.     "submit",
  878.     "reset",
  879.     "file",
  880.     "hidden",
  881.     "image",
  882.     "button"
  883. ];
  884.  
  885. gHTMLAttr.input_checked =
  886. [
  887.     "checked"
  888. ];
  889.  
  890. gHTMLAttr.input_disabled =
  891. [
  892.     "disabled"
  893. ];
  894.  
  895. gHTMLAttr.input_readonly =
  896. [
  897.     "readonly"
  898. ];
  899.  
  900.  
  901. gHTMLAttr.input_ismap =
  902. [
  903.     "ismap"
  904. ];
  905.  
  906.  
  907. gHTMLAttr.input_align =
  908. [
  909.     "top",
  910.     "middle",
  911.     "bottom",
  912.     "left",
  913.     "right"
  914. ];
  915.  
  916. gHTMLAttr.ins =
  917. [
  918.     "cite",
  919.     "datetime",
  920.   "-",
  921.   "_core",
  922.   "-",
  923.     "lang",
  924.     "dir"
  925. ];
  926.  
  927. gHTMLAttr.isindex =
  928. [
  929.     "prompt",
  930.   "-",
  931.   "_core",
  932.   "-",
  933.     "lang",
  934.     "dir"
  935. ];
  936.  
  937. gHTMLAttr.kbd =
  938. [
  939.   "_core",
  940.   "-",
  941.     "lang",
  942.     "dir"
  943. ];
  944.  
  945. gHTMLAttr.label =
  946. [
  947.     "for",
  948.     "!accesskey",
  949.   "-",
  950.   "_core",
  951.   "-",
  952.     "lang",
  953.     "dir"
  954. ];
  955.  
  956. gHTMLAttr.legend =
  957. [
  958.     "!accesskey",
  959.     "align",
  960.   "-",
  961.   "_core",
  962.   "-",
  963.     "lang",
  964.     "dir"
  965. ];
  966.  
  967. gHTMLAttr.legend_align =
  968. [
  969.     "top",
  970.     "bottom",
  971.     "left",
  972.     "right"
  973. ];
  974.  
  975. gHTMLAttr.li =
  976. [
  977.     "type",
  978.     "#value",
  979.   "-",
  980.   "_core",
  981.   "-",
  982.     "lang",
  983.     "dir"
  984. ];
  985.  
  986. gHTMLAttr.li_type =
  987. [
  988.     "disc",
  989.     "square",
  990.     "circle",
  991.   "-",
  992.     "1",
  993.     "a",
  994.     "A",
  995.     "i",
  996.     "I"
  997. ];
  998.  
  999. gHTMLAttr.link =
  1000. [
  1001.     "charset",
  1002.     "href",
  1003.     "hreflang",
  1004.     "type",
  1005.     "rel",
  1006.     "rev",
  1007.     "media",
  1008.     "target",
  1009.   "-",
  1010.   "_core",
  1011.   "-",
  1012.     "lang",
  1013.     "dir"
  1014. ];
  1015.  
  1016. gHTMLAttr.link_rel =
  1017. [
  1018.     "alternate",
  1019.     "stylesheet",
  1020.     "start",
  1021.     "next",
  1022.     "prev",
  1023.     "contents",
  1024.     "index",
  1025.     "glossary",
  1026.     "copyright",
  1027.     "chapter",
  1028.     "section",
  1029.     "subsection",
  1030.     "appendix",
  1031.     "help",
  1032.     "bookmark"
  1033. ];
  1034.  
  1035. gHTMLAttr.link_rev =
  1036. [
  1037.     "alternate",
  1038.     "stylesheet",
  1039.     "start",
  1040.     "next",
  1041.     "prev",
  1042.     "contents",
  1043.     "index",
  1044.     "glossary",
  1045.     "copyright",
  1046.     "chapter",
  1047.     "section",
  1048.     "subsection",
  1049.     "appendix",
  1050.     "help",
  1051.     "bookmark"
  1052. ];
  1053.  
  1054. gHTMLAttr.map =
  1055. [
  1056.     "$name",
  1057.   "-",
  1058.   "_core",
  1059.   "-",
  1060.     "lang",
  1061.     "dir"
  1062. ];
  1063.  
  1064. gHTMLAttr.menu =
  1065. [
  1066.     "compact",
  1067.   "-",
  1068.   "_core",
  1069.   "-",
  1070.     "lang",
  1071.     "dir"
  1072. ];
  1073.  
  1074. gHTMLAttr.menu_compact =
  1075. [
  1076.     "compact"
  1077. ];
  1078.  
  1079. gHTMLAttr.meta =
  1080. [
  1081.     "http-equiv",
  1082.     "name",
  1083.     "$content",
  1084.     "scheme",
  1085.   "-",
  1086.     "lang",
  1087.     "dir"
  1088. ];
  1089.  
  1090. gHTMLAttr.noframes =
  1091. [
  1092.   "_core",
  1093.   "-",
  1094.     "lang",
  1095.     "dir"
  1096. ];
  1097.  
  1098. gHTMLAttr.noscript =
  1099. [
  1100.   "_core",
  1101.   "-",
  1102.     "lang",
  1103.     "dir"
  1104. ];
  1105.  
  1106. gHTMLAttr.object =
  1107. [
  1108.     "declare",
  1109.     "classid",
  1110.     "codebase",
  1111.     "data",
  1112.     "type",
  1113.     "codetype",
  1114.     "archive",
  1115.     "standby",
  1116.     "%height",
  1117.     "%width",
  1118.     "usemap",
  1119.     "name",
  1120.     "#tabindex",
  1121.     "align",
  1122.     "border",
  1123.     "hspace",
  1124.     "vspace",
  1125.   "-",
  1126.   "_core",
  1127.   "-",
  1128.     "lang",
  1129.     "dir"
  1130. ];
  1131.  
  1132. gHTMLAttr.object_declare =
  1133. [
  1134.     "declare"
  1135. ];
  1136.  
  1137. gHTMLAttr.object_align =
  1138. [
  1139.     "top",
  1140.     "middle",
  1141.     "bottom",
  1142.     "left",
  1143.     "right"
  1144. ];
  1145.  
  1146. gHTMLAttr.ol =
  1147. [
  1148.     "type",
  1149.     "compact",
  1150.     "#start",
  1151.   "-",
  1152.   "_core",
  1153.   "-",
  1154.     "lang",
  1155.     "dir"
  1156. ];
  1157.  
  1158. gHTMLAttr.ol_type =
  1159. [
  1160.     "1",
  1161.     "a",
  1162.     "A",
  1163.     "i",     
  1164.     "I"
  1165. ];
  1166.  
  1167. gHTMLAttr.ol_compact =
  1168. [
  1169.     "compact"
  1170. ];
  1171.  
  1172.  
  1173. gHTMLAttr.optgroup =
  1174. [
  1175.     "disabled",
  1176.     "$label",
  1177.   "-",
  1178.   "_core",
  1179.   "-",
  1180.     "lang",
  1181.     "dir"
  1182. ];
  1183.  
  1184. gHTMLAttr.optgroup_disabled =
  1185. [
  1186.     "disabled"
  1187. ];
  1188.  
  1189.  
  1190. gHTMLAttr.option =
  1191. [
  1192.     "selected",
  1193.     "disabled",
  1194.     "label",
  1195.     "value",
  1196.   "-",
  1197.   "_core",
  1198.   "-",
  1199.     "lang",
  1200.     "dir"
  1201. ];
  1202.  
  1203. gHTMLAttr.option_selected =
  1204. [
  1205.     "selected"
  1206. ];
  1207.  
  1208. gHTMLAttr.option_disabled =
  1209. [
  1210.     "disabled"
  1211. ];
  1212.  
  1213.  
  1214. gHTMLAttr.p =
  1215. [
  1216.     "align",
  1217.   "-",
  1218.   "_core",
  1219.   "-",
  1220.     "lang",
  1221.     "dir"
  1222. ];
  1223.  
  1224. gHTMLAttr.p_align = gHAlignJustify;
  1225.  
  1226. gHTMLAttr.param =
  1227. [
  1228.     "id",
  1229.     "$name",
  1230.     "value",
  1231.     "$valuetype",
  1232.     "type"
  1233. ];
  1234.  
  1235. gHTMLAttr.param_valuetype =
  1236. [
  1237.     "data",
  1238.     "ref",
  1239.     "object"
  1240. ];
  1241.  
  1242.  
  1243. gHTMLAttr.pre =
  1244. [
  1245.     "%width",
  1246.   "-",
  1247.   "_core",
  1248.   "-",
  1249.     "lang",
  1250.     "dir"
  1251. ];
  1252.  
  1253. gHTMLAttr.q =
  1254. [
  1255.     "cite",
  1256.   "-",
  1257.   "_core",
  1258.   "-",
  1259.     "lang",
  1260.     "dir"
  1261. ];
  1262.  
  1263. gHTMLAttr.s =
  1264. [
  1265.   "_core",
  1266.   "-",
  1267.     "lang",
  1268.     "dir"
  1269. ];
  1270.  
  1271. gHTMLAttr.samp =
  1272. [
  1273.   "_core",
  1274.   "-",
  1275.     "lang",
  1276.     "dir"
  1277. ];
  1278.  
  1279. gHTMLAttr.script =
  1280. [
  1281.     "charset",
  1282.     "$type",
  1283.     "language",
  1284.     "src",
  1285.     "defer"
  1286. ];
  1287.  
  1288. gHTMLAttr.script_defer =
  1289. [
  1290.     "defer"
  1291. ];
  1292.  
  1293.  
  1294. gHTMLAttr.select =
  1295. [
  1296.     "name",
  1297.     "#size",
  1298.     "multiple",
  1299.     "disabled",
  1300.     "#tabindex",
  1301.   "-",
  1302.   "_core",
  1303.   "-",
  1304.     "lang",
  1305.     "dir"
  1306. ];
  1307.  
  1308. gHTMLAttr.select_multiple =
  1309. [
  1310.     "multiple"
  1311. ];
  1312.  
  1313. gHTMLAttr.select_disabled =
  1314. [
  1315.     "disabled"
  1316. ];
  1317.  
  1318. gHTMLAttr.small =
  1319. [
  1320.   "_core",
  1321.   "-",
  1322.     "lang",
  1323.     "dir"
  1324. ];
  1325.  
  1326. gHTMLAttr.span =
  1327. [
  1328.   "_core",
  1329.   "-",
  1330.     "lang",
  1331.     "dir"
  1332. ];
  1333.  
  1334. gHTMLAttr.strike =
  1335. [
  1336.   "_core",
  1337.   "-",
  1338.     "lang",
  1339.     "dir"
  1340. ];
  1341.  
  1342. gHTMLAttr.strong =
  1343. [
  1344.   "_core",
  1345.   "-",
  1346.     "lang",
  1347.     "dir"
  1348. ];
  1349.  
  1350. gHTMLAttr.style =
  1351. [
  1352.     "$type",
  1353.     "media",
  1354.     "title",
  1355.   "-",
  1356.     "lang",
  1357.     "dir"
  1358. ];
  1359.  
  1360. gHTMLAttr.sub =
  1361. [
  1362.   "_core",
  1363.   "-",
  1364.     "lang",
  1365.     "dir"
  1366. ];
  1367.  
  1368. gHTMLAttr.sup =
  1369. [
  1370.   "_core",
  1371.   "-",
  1372.     "lang",
  1373.     "dir"
  1374. ];
  1375.  
  1376. gHTMLAttr.table =
  1377. [
  1378.     "summary",
  1379.     "%width",
  1380.     "#border",
  1381.     "frame",
  1382.     "rules",
  1383.     "#cellspacing",
  1384.     "#cellpadding",
  1385.     "align",
  1386.     "bgcolor",
  1387.   "-",
  1388.   "_core",
  1389.   "-",
  1390.     "lang",
  1391.     "dir"
  1392. ];
  1393.  
  1394. gHTMLAttr.table_frame =
  1395. [
  1396.     "void",
  1397.     "above",
  1398.     "below",
  1399.     "hsides",
  1400.     "lhs",
  1401.     "rhs",
  1402.     "vsides",
  1403.     "box",
  1404.     "border"
  1405. ];
  1406.  
  1407. gHTMLAttr.table_rules =
  1408. [
  1409.     "none",
  1410.     "groups",
  1411.     "rows",
  1412.     "cols",
  1413.     "all"
  1414. ];
  1415.  
  1416. // Note; This is alignment of the table,
  1417. //  not table contents, like all other table child elements
  1418. gHTMLAttr.table_align = gHAlign;
  1419.  
  1420. gHTMLAttr.table_bgcolor = gHTMLColors;
  1421.  
  1422. gHTMLAttr.tbody =
  1423. [
  1424.     "align",
  1425.     "!char",
  1426.     "#charoff",
  1427.     "valign",
  1428.   "-",
  1429.   "_core",
  1430.   "-",
  1431.     "lang",
  1432.     "dir"
  1433. ];
  1434.  
  1435. gHTMLAttr.tbody_align = gHAlignTableContent;
  1436.  
  1437. gHTMLAttr.tbody_valign = gVAlignTable;
  1438.  
  1439. gHTMLAttr.td =
  1440. [
  1441.     "abbr",
  1442.     "axis",
  1443.     "headers",
  1444.     "scope",
  1445.     "$#rowspan",
  1446.     "$#colspan",
  1447.     "align",
  1448.     "!char",
  1449.     "#charoff",
  1450.     "valign",
  1451.     "nowrap",
  1452.     "bgcolor",
  1453.     "%width",
  1454.     "%height",
  1455.   "-",
  1456.   "_core",
  1457.   "-",
  1458.     "lang",
  1459.     "dir"
  1460. ];
  1461.  
  1462. gHTMLAttr.td_scope =
  1463. [
  1464.     "row",
  1465.     "col",
  1466.     "rowgroup",
  1467.     "colgroup"
  1468. ];
  1469.  
  1470. gHTMLAttr.td_rowspan =
  1471. [
  1472.     "1" // default
  1473. ];
  1474.  
  1475. gHTMLAttr.td_colspan =
  1476. [
  1477.     "1" // default
  1478. ];
  1479.  
  1480. gHTMLAttr.td_align = gHAlignTableContent;
  1481.  
  1482. gHTMLAttr.td_valign = gVAlignTable;
  1483.  
  1484. gHTMLAttr.td_nowrap =
  1485. [
  1486.     "nowrap"
  1487. ];
  1488.  
  1489. gHTMLAttr.td_bgcolor = gHTMLColors;
  1490.  
  1491. gHTMLAttr.textarea =
  1492. [
  1493.     "name",
  1494.     "$#rows",
  1495.     "$#cols",
  1496.     "disabled",
  1497.     "readonly",
  1498.     "#tabindex",
  1499.     "!accesskey",
  1500.   "-",
  1501.   "_core",
  1502.   "-",
  1503.     "lang",
  1504.     "dir"
  1505. ];
  1506.  
  1507. gHTMLAttr.textarea_disabled =
  1508. [
  1509.     "disabled"
  1510. ];
  1511.  
  1512. gHTMLAttr.textarea_readonly =
  1513. [
  1514.     "readonly"
  1515. ];
  1516.  
  1517.  
  1518. gHTMLAttr.tfoot =
  1519. [
  1520.     "align",
  1521.     "!char",
  1522.     "#charoff",
  1523.     "valign",
  1524.   "-",
  1525.   "_core",
  1526.   "-",
  1527.     "lang",
  1528.     "dir"
  1529. ];
  1530.  
  1531. gHTMLAttr.tfoot_align = gHAlignTableContent;
  1532.  
  1533. gHTMLAttr.tfoot_valign = gVAlignTable;
  1534.  
  1535. gHTMLAttr.th =
  1536. [
  1537.     "abbr",
  1538.     "axis",
  1539.     "headers",
  1540.     "scope",
  1541.     "$#rowspan",
  1542.     "$#colspan",
  1543.     "align",
  1544.     "!char",
  1545.     "#charoff",
  1546.     "valign",
  1547.     "nowrap",
  1548.     "bgcolor",
  1549.     "%width",
  1550.     "%height",
  1551.   "-",
  1552.   "_core",
  1553.   "-",
  1554.     "lang",
  1555.     "dir"
  1556. ];
  1557.  
  1558. gHTMLAttr.th_scope =
  1559. [
  1560.     "row",
  1561.     "col",
  1562.     "rowgroup",
  1563.     "colgroup"
  1564. ];
  1565.  
  1566. gHTMLAttr.th_rowspan =
  1567. [
  1568.     "1" // default
  1569. ];
  1570.  
  1571. gHTMLAttr.th_colspan =
  1572. [
  1573.     "1" // default
  1574. ];
  1575.  
  1576. gHTMLAttr.th_align = gHAlignTableContent;
  1577.  
  1578. gHTMLAttr.th_valign = gVAlignTable;
  1579.  
  1580. gHTMLAttr.th_nowrap =
  1581. [
  1582.     "nowrap"
  1583. ];
  1584.  
  1585. gHTMLAttr.th_bgcolor = gHTMLColors;
  1586.  
  1587. gHTMLAttr.thead =
  1588. [
  1589.     "align",
  1590.     "!char",
  1591.     "#charoff",
  1592.     "valign",
  1593.   "-",
  1594.   "_core",
  1595.   "-",
  1596.     "lang",
  1597.     "dir"
  1598. ];
  1599.  
  1600. gHTMLAttr.thead_align = gHAlignTableContent;
  1601.  
  1602. gHTMLAttr.thead_valign = gVAlignTable;
  1603.  
  1604. gHTMLAttr.title =
  1605. [
  1606.     "lang",
  1607.     "dir"
  1608. ];
  1609.  
  1610. gHTMLAttr.tr =
  1611. [
  1612.     "align",
  1613.     "!char",
  1614.     "#charoff",
  1615.     "valign",
  1616.     "bgcolor",
  1617.   "-",
  1618.   "_core",
  1619.   "-",
  1620.     "lang",
  1621.     "dir"
  1622. ];
  1623.  
  1624. gHTMLAttr.tr_align = gHAlignTableContent;
  1625.  
  1626. gHTMLAttr.tr_valign = gVAlignTable;
  1627.  
  1628. gHTMLAttr.tr_bgcolor = gHTMLColors;
  1629.  
  1630. gHTMLAttr.tt =
  1631. [
  1632.   "_core",
  1633.   "-",
  1634.     "lang",
  1635.     "dir"
  1636. ];
  1637.  
  1638. gHTMLAttr.u =
  1639. [
  1640.   "_core",
  1641.   "-",
  1642.     "lang",
  1643.     "dir"
  1644. ];
  1645. gHTMLAttr.ul =
  1646. [
  1647.     "type",
  1648.     "compact",
  1649.   "-",
  1650.   "_core",
  1651.   "-",
  1652.     "lang",
  1653.     "dir"
  1654. ];
  1655.  
  1656. gHTMLAttr.ul_type =
  1657. [
  1658.     "disc",
  1659.     "square",
  1660.     "circle"
  1661. ];
  1662.  
  1663. gHTMLAttr.ul_compact =
  1664. [
  1665.     "compact"
  1666. ];
  1667.  
  1668.  
  1669. // Prefix with "_" since this is reserved (it's stripped out)
  1670. gHTMLAttr._var =
  1671. [
  1672.   "_core",
  1673.   "-",
  1674.     "lang",
  1675.     "dir"
  1676. ];
  1677.  
  1678. // ================ JS Attributes ================ //
  1679. // These are element specif even handlers. 
  1680. // All elements use gCoreJSEvents
  1681.  
  1682. gJSAttr.a =
  1683. [
  1684.     "onfocus",
  1685.     "onblur"
  1686. ];
  1687.  
  1688. gJSAttr.area =
  1689. [
  1690.     "onfocus",
  1691.     "onblur"
  1692. ];
  1693.  
  1694. gJSAttr.body =
  1695.     [
  1696.     "onload",
  1697.     "onupload"
  1698. ];
  1699.  
  1700. gJSAttr.button =
  1701.     [
  1702.     "onfocus",
  1703.     "onblur"
  1704. ];
  1705.  
  1706. gJSAttr.form =
  1707.     [
  1708.     "onsubmit",
  1709.     "onreset"
  1710. ];
  1711.  
  1712. gJSAttr.frameset =
  1713.     [
  1714.     "onload",
  1715.     "onunload"
  1716. ];
  1717.  
  1718. gJSAttr.input =
  1719. [
  1720.     "onfocus",
  1721.     "onblur",
  1722.     "onselect",
  1723.     "onchange"
  1724. ];
  1725.  
  1726. gJSAttr.label =
  1727. [
  1728.     "onfocus",
  1729.     "onblur"
  1730. ];
  1731.  
  1732. gJSAttr.select =
  1733. [
  1734.     "onfocus",
  1735.     "onblur",
  1736.     "onchange"
  1737. ];
  1738.  
  1739. gJSAttr.textarea =
  1740. [
  1741.     "onfocus",
  1742.     "onblur",
  1743.     "onselect",
  1744.     "onchange"
  1745. ];
  1746.  
  1747.